 /**
 * 逻辑、功能相关描述: <br>
 *
 * @author 付湘辉  <br>
 * 编写日期：2008-9-1  <br>
 */
package com.ce.pms.customer.service;

import java.util.List;
import com.ce.pms.base.service.IPmsBaseService;
import com.ce.pms.customer.model.ClientRHouseDO;
import com.ce.pms.customer.model.ParticipantDO;

/**
 * 	名称: com.ce.pms.customer.service.IClientRHouseService <br>
 *
 *
 * @author  付湘辉  <br>
 * Created on： 2008-8-15 <br>
 * @author <br>
 * update on： <br>
 * why: <br>
 */
public interface IClientRHouseService extends IPmsBaseService {
	/**
	 * 功能描述: 根据房间id得到所有的业主实体 <br>
	 * @param houseId
	 * @return
	 *
	 * Create author:付湘辉 <br>
	 * Create on:2008-8-15  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public List<ParticipantDO> getAllOwnerByHouseId(Long houseId);

	/**
	 * 功能描述: 通过房屋id和客户类型id得到其对应的客户房屋关系列表<br>
	 * @param houseIds
	 * @param clientId 客户ID,方法根据客户ID,查询相应的客户类型
	 * @return
	 * Create author:yixianjian <br>
	 * Create on:2008-11-28  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public List<ClientRHouseDO> getClientRHouseListByHouseIdAndClientType(Long houseId,Long clientId);

	/**
	 * 功能描述: 根据房间id得到所有的业主名称列表 <br>
	 * @param houseId
	 * @return
	 *
	 * Create author:付湘辉 <br>
	 * Create on:2008-8-15  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public List<String> getAllOwnerNameByHouseId(Long houseId);

	/**
	 * 功能描述: 根据房间id得到所有的业主名称，用逗号分隔 <br>
	 * @param houseId
	 * @return
	 *
	 * Create author:付湘辉 <br>
	 * Create on:2008-8-15  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public String getAllOwnerNameJoinByHouseId(Long houseId);

	/**
	 * 功能描述: 根据房屋id和参与人id查询相应的客户房屋关系实体,
	 * 如果搬入日期不为空而搬出日期为空则返回查询结果，否则返回空值。 <br>
	 * @param houseId
	 * @param participantId
	 * @return
	 *
	 * Create author:付湘辉 <br>
	 * Create on:2008-11-26  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public ClientRHouseDO getCRHByHouseAndParticipantId(Long houseId,Long participantId);
}
